package com.zx.account.service;

import com.zx.account.controller.vo.AccountVo;
import com.zx.account.entity.Account;
import com.zx.account.model.BurnChartDto;
import com.zx.account.model.MonthAccountDto;
import com.zx.account.model.YearAccountDto;
import java.util.Date;
import java.util.List;


public interface AccountService {

    boolean insert(Account acc);

    boolean delete(int id);

    Account getById(int id);

    // 按组合条件查询
    List<AccountVo> getAccount(Date beginDate, Date endDate, int tid, Integer tdId, int userId);

    // 按年月查询
    List<AccountVo> getByMonth(int year, int month, int userId);

    /**
     * @param year
     * @param tids
     * @param userId
     * @return
     * @Title: 统计某一年的数据
     * @date: 2019年10月4日下午10:57:21
     * @author: zhangxue
     */
    List<MonthAccountDto> getMonthAccount(int year, int[] tids, int userId);

    List<YearAccountDto> getYearAccount(int beginYear, int endYear, int[] tids, int userId);

    /**
     * @param tids
     * @param year
     * @param month
     * @param userId
     * @return
     * @Title: 查询燃尽图数据
     * @author: xue.zhang
     * @date 2018年6月28日上午10:27:48
     */
    List<BurnChartDto> getBurnDataByType(int[] tids, int year, int month, int userId);
}
